package com.sgb.kjwl.di.vehicleManagement;

import com.sgb.kjwl.repository.HomeRepertory;
import com.sgb.kjwl.repository.impl.HomeRepertoryImpl;
import com.sgb.kjwl.view.ui.activity.vehicleManagement.DriverCertificationActivity;
import com.sgb.kjwl.view.ui.activity.vehicleManagement.DriverCertificationAuditStatusActivity;
import com.sgb.kjwl.viewmodel.vehicleManagement.DriverCertificationAtvModel;
import com.sgb.kjwl.viewmodel.vehicleManagement.DriverCertificationAuditStatusAtvModel;
import com.swgk.core.base.di.Activity;
import com.swgk.core.base.api.BaseApiSource;
import com.swgk.core.base.model.preference.BasePreferenceSource;

import dagger.Module;
import dagger.Provides;

@Module
public class DriverCertificationAuditStatusModule {

    private DriverCertificationAuditStatusActivity driverCertificationAuditStatusActivity;

    public DriverCertificationAuditStatusModule(DriverCertificationAuditStatusActivity driverCertificationAuditStatusActivity) {
        this.driverCertificationAuditStatusActivity = driverCertificationAuditStatusActivity;
    }


    @Provides
    @Activity
    HomeRepertory provideHomeRepertory(BaseApiSource apiSource, BasePreferenceSource preferenceSource) {
        return new HomeRepertoryImpl(apiSource, preferenceSource);
    }


    @Provides
    @Activity
    DriverCertificationAuditStatusAtvModel provideDriverCertificationAuditStatusAtvModel(HomeRepertory repertory) {
        return new DriverCertificationAuditStatusAtvModel(driverCertificationAuditStatusActivity, repertory);
    }

}
